import request from '@/api/axios'
import {AxiosPromise} from 'axios'
import {DataRes} from '@/api/config'

export interface GetHierarchicList {
  region?: string
  parentCode?: string
}

//数据行政区域下拉数据
export interface HierarchicData {
  region: string //所属大区编码
  districtName: string //行政区域名称
  districtCode: string //行政区域编码
  parentCode: string //上级行政区域编码
  provinceCode: string //省级行政区域编码
  type: string //行政区域类型
  lastStage: 0 | 1 //是否叶子节点：0.否、1.是
  id: string
}

//级联查询行政区域列表 largeRegion查询一级 parentCode查询二级
export const getHierarchicList = (params: GetHierarchicList): AxiosPromise<DataRes<Array<HierarchicData>>> => {
  return request({
    url: '/api/district/sublist',
    method: 'get',
    params
  })
}

// 机构资料
export interface InstitutionalData {
  id?: string
  orgCode: string // 机构编码
  gwOrgCode: string // 单位编码
  orgName: string // 机构名称
  phone?: string // 联系人电话
  linkman: string // 联系人
  grade: string // 机构等级
  telephone: string // 机构电话
  parentCode: string // 市编码
  provinceCode: string //省编码
  districtCode: string //区编码
  districtArr: Array<string>
  address?: string // 详细地址
  innerIp: string //内网环境IP
}

// 保存机构资料
export const saveInstitutionalData = (data: Partial<InstitutionalData>): AxiosPromise<DataRes<null>> => {
  return request({
    url: '/api/org/save',
    method: 'post',
    data
  })
}

// 获取机构资料
export const getInstitutionalData = (): AxiosPromise<DataRes<InstitutionalData>> => {
  return request({
    url: '/api/org/getOrgInfo',
    method: 'get'
  })
}
